import { manualTrackerReport } from './tracker/actionTracker';
import { errorCaptcher } from './tracker/errorTracker';
import { lazyReport, report } from './report/report';
import { getCache } from './cache/cache';
import {loadMinitorConfig} from "./utils/util";

// 初始化配置
function initMonitor(options) {
  // 1.拿到配置信息 2.注入监控代码
  loadMinitorConfig(options);
  // uv统计,统计用户
  lazyReport('user', '加载应用');
  // ------ 防止卸载时还有剩余的埋点数据没发送 ------
  window.addEventListener('unload', () => {
    const data = getCache();
    report(data);
    // if (data.length > 0) {
    //   report(data);
    // }
  });
}
//是程序员可以按需引入
export { initMonitor, manualTrackerReport, errorCaptcher };